home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Adobe Graphics & Publishing SDK 1996 December
/
Adobe Graphics & Publishing SDK 1996 December.iso
/
mac
/
Illustrator 6.0 SDK r1 Mac
/
AI Plugin Interface
/
AIFileFormat.h
< prev
next >
Wrap
Text File
|
1995-12-21
|
3KB
|
126 lines
/**
AIFileFormat.h
Copyright (c) 1995 Adobe Systems Incorporated.
All Rights Reserved
Adobe Illustrator 6.0 File Format Suite.
**/
#ifndef __AIFileFormat__
#define __AIFileFormat__
/*******************************************************************************
**
** Imports
**
**/
#include "AITypes.h"
#include "AIPlugin.h"
/*******************************************************************************
**
** Constants
**
**/
#define kAIFileFormatSuite "AI File Format Suite"
#define kAIFileFormatVersion 4
#define kAIMacFileFormatSuite "AI Mac File Format Suite"
#define kAIMacFileFormatVersion 2
// These are the file format messages.
#define kSelectorAIGetFileFormatParameters "AI Get File Format Parameters"
#define kSelectorAIGoFileFormat "AI Go File Format"
#define kSelectorAICheckFileFormat "AI Check File Format"
// These are the file format options.
#define kFileFormatRead (1L<<0)
#define kFileFormatWrite (1L<<1)
#define kFileFormatImportArt (1L<<2)
#define kFileFormatPlaceArt (1L<<3)
//
#define kFileFormatImportStyles (1L<<4)
#define kFileFormatSuppliesPrintRecordOption (1L<<5)
#define kFileFormatIsDefaultOption (1L<<6)
// Artwork Notifiers
#define kAIFileFormatDocumentOpenedNotifier "AI File Format Document Opened Notifier"
#define kUnknownFormatErr 'FMT?'
/*******************************************************************************
**
** Types
**
**/
// This is a reference to a file format. It is never dereferenced.
typedef struct _t_AIFileFormatOpaque *AIFileFormatHandle;
#if Macintosh
typedef Handle PlatformFileFormatParameters;
typedef FSSpec PlatformFileFormatFileSpecification;
typedef struct {
OSType type;
StringPtr title;
long titleOrder;
} PlatformAddFileFormatData;
#endif
typedef struct {
AIPluginData d;
AIFileFormatHandle fileFormat;
PlatformFileFormatFileSpecification file;
long option;
} AIFileFormatMessage;
/*******************************************************************************
**
** Suite
**
**/
typedef struct {
MACPASCAL FXErr (*AddFileFormat) ( AIPluginHandle self, char *name,
PlatformAddFileFormatData *data, long options,
AIFileFormatHandle *fileFormat );
MACPASCAL FXErr (*GetFileFormatName) ( AIFileFormatHandle fileFormat, char **name );
MACPASCAL FXErr (*GetFileFormatOptions) ( AIFileFormatHandle fileFormat, long *options );
MACPASCAL FXErr (*SetFileFormatOptions) ( AIFileFormatHandle fileFormat, long options );
MACPASCAL FXErr (*GetFileFormatPlugin) ( AIFileFormatHandle fileFormat,
AIPluginHandle *plugin );
MACPASCAL FXErr (*CountFileFormats) ( long *count );
MACPASCAL FXErr (*GetNthFileFormat) ( long n, AIFileFormatHandle *fileFormat );
} AIFileFormatSuite;
#if Macintosh
typedef struct {
MACPASCAL FXErr (*MacXGetFileFormatTitle) ( AIFileFormatHandle fileFormat, StringPtr title );
MACPASCAL FXErr (*MacXSetFileFormatTitle) ( AIFileFormatHandle fileFormat, StringPtr title );
MACPASCAL FXErr (*MacXGetFileFormatType) ( AIFileFormatHandle fileFormat, OSType *type );
MACPASCAL FXErr (*MacXSetFileFormatType) ( AIFileFormatHandle fileFormat, OSType type );
} AIMacFileFormatSuite;
#endif
#endif